/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package exercicio_09;

import java.text.DecimalFormat;
import java.util.ArrayList;
import java.util.List;

/**
 *
 * @author Gustavo
 */
public class ControleFerramentas {

    DecimalFormat df;
    Furadeira f;
    Lixadeira l;
    Serra s;
    Alicate a;
    Martelo m;
    Serrote se;

    public Alicate getA() {
        return a;
    }

    public DecimalFormat getDf() {
        return df;
    }

    public Furadeira getF() {
        return f;
    }

    public Lixadeira getL() {
        return l;
    }

    public Martelo getM() {
        return m;
    }

    public Serra getS() {
        return s;
    }

    public Serrote getSe() {
        return se;
    }

    public void salvarFerramenta() {
        df = new DecimalFormat("0.00");
        f = new Furadeira(7200, 200, 220, "B-400", "Bosh", 300, 0.5);
        l = new Lixadeira(7200, 420, 220, "B-420", "Black-Deker", 300, 0.75);
        s = new Serra(7200, 720, 220, "B-720", "Boch", 1000, 1);
        a = new Alicate(8, "Universal", "T-20", "Tramontina", 75, 0.25);
        m = new Martelo(40, "Bola", "T-10", "Tramontina", 100, 0.15);
        se = new Serrote(40, 50, "Universal", "T-25", "Tramontina", 90, 0.5);
    }

    public void calcularFerramentas() {

        System.out.println("Consumo das ferramentas elétricas da oficina no mês");
        System.out.println("-------:" + ((f.getPotenciaWATTS() * 3 * 30) + (l.getPotenciaWATTS() * 2 * 30) + (s.getPotenciaWATTS() * 4 * 30)) + " Watts.");

        System.out.println(" ");

        System.out.println("Consumo das ferramentas Eletricas da oficina por semana");
        System.out.println("-------:" + (((f.getPotenciaWATTS() * 3 * 30) + (l.getPotenciaWATTS() * 2 * 30) + (s.getPotenciaWATTS() * 4 * 30)) / 4) + " Watts.");

    }

    public void calcularFerramentaManualMaiorConsumo() {
        System.out.println(" ");
        if ((a.calculaDesgaste() > m.calculaDesgaste()) && (a.calculaDesgaste() > se.calculaDesgaste())) {
            System.out.println("A alicate possui o maior tempo de vida, que é a" + df.format(a.calculaDesgaste()) + " horas");
            System.out.println("A alicate possui o maior tempo de vida, que é " + df.format(a.calculaDesgaste("DIAS")) + " dias");
            System.out.println("A alicate possui o maior tempo de vida, que é " + df.format(a.calculaDesgaste("SEMANAS")) + " semanas");
        } else if ((m.calculaDesgaste() > a.calculaDesgaste()) && (m.calculaDesgaste() > se.calculaDesgaste())) {
            System.out.println("A martelo possui o maior tempo de vida, que é a" + df.format(m.calculaDesgaste()) + " horas");
            System.out.println("A martelo possui o maior tempo de vida, que é " + df.format(m.calculaDesgaste("DIAS")) + " dias");
            System.out.println("A martelo possui o maior tempo de vida, que é " + df.format(m.calculaDesgaste("SEMANAS")) + " semanas");
        } else {
            System.out.println("A Serrote possui o maior tempo de vida, que é a " + df.format(se.calculaDesgaste()) + " horas");
            System.out.println("A Serrote possui o maior tempo de vida, que é " + df.format(se.calculaDesgaste("DIAS")) + " dias");
            System.out.println("A Serrote possui o maior tempo de vida, que é " + df.format(se.calculaDesgaste("SEMANAS")) + " semanas");
        }
    }

    public static void main(String[] args) {
        ControleFerramentas cf = new ControleFerramentas();
        cf.salvarFerramenta();
        cf.calcularFerramentas();
        cf.calcularFerramentaManualMaiorConsumo();
    }
}
